<?php

namespace Modules\Shop\Http\Controllers;

use Illuminate\Http\Request;
use Illuminate\Routing\Controller;
use Illuminate\View\FileViewFinder;
use Modules\Shop\Entities\Article;
use Modules\Shop\Entities\Comment;
use View;
use App;

class HomeController extends Controller
{
    public function __construct()
    {
        //获取配置
        //下面是获取 Admin/config/config.php 文件中的name值，支持 . 从深度嵌套的数组中检索值。
        $default = \HDModule::config('admin.config.template');
        //dd($default);
        //定义模板文件的路径
        $path = [public_path('templates/' . $default)];
        //动态改变当前类，找到模板的初始地址
        //setFinder()设置目录
        View::setFinder(new FileViewFinder(App::make('files'),$path));
    }
    //模板首页
    public function index()
    {
        return view('index');
    }

    /**
     * 文章展示页
     * @param $cid 分类ID
     */
    public function work()
    {
        return view('work');
    }
    public function list($cid){
        return view('list',compact('cid'));
    }
    //文章页
    public function project($id)
    {
        $article = Article::find($id);
        return view('project',compact('article'));
    }
    //博客展示页
    public function blog()
    {
        return view('blog');
    }
    //博客文章页
    public function single($id)
    {
        //获取当前文章的已审核的评论内容
         $article = Article::find($id);
         $comments = Comment::where('status',1)->where('article_id',$article['id'])->orderBy('created_at','desc')->get();
         //dd($comments);
         return view('single',compact('article','comments'));
    }
    //预留内容页
    public function page()
    {
        return view('page');
    }
    //联系我
    public function contact(){
        return view('contact');
    }
    //其他预留页
    public function other(){
        return view('other');
    }
    public function store(Request $request){
        //dd($request->all());
        //使用模型关联方法来进行数据保存
        auth()->user()->comment()->create($request->all());
        //提示成功信息并返回
        session()->flash('success','留言成功，等待审核中...');
        return back();
    }
}
